home *** CD-ROM | disk | FTP | other *** search
- ===========================================================================
- BBS: Canada Remote Systems
- Date: 07-11-93 (13:22) Number: 30113
- From: STEVE WIERENGA Refer#: NONE
- To: TRAVIS GRIGGS Recvd: NO
- Subj: SPEAKER(OFF) Conf: (1221) F-PASCAL
- ---------------------------------------------------------------------------
- Hello Travis:
-
- >> { untested, but should work }
- >> {$M 1024,0,0}
- >> {$F+}
- >> uses DOS;
- >> Var
- >> Old1C : Procedure;
- TG>
- >> Procedure SpeakerOff; Interrupt;
- >> Begin
- >> ASM { no sound proc, removes need to use CRT unit in a TSR }
- >> mov dx,061h
- >> in al,dx
- >> and al,11111100b
- >> out dx,al
- >> pushf
- >> End;
- >> Old1C;
- >> End;
- TG>
- >> Begin
- >> GetIntVec ($1C,@Old1C);
- >> SetIntVec ($1C,@SpeakerOff);
- >> Keep(0);
- >> End.
- TG>
- TG> I'm trying to learn to write a TSR. Could you explain every step and
- TG> why it's there? Thanks...
-
- I didn't write that code, actually. I have never written a TSR and don't plan
- to in the near future, so I suggest you ask one of the gurus here.
-
- >> --- FMail 0.90
- TG>
- TG> Fmail 0.94 is out. You should get it. It's much better...
-
- I'm still with .90 because I can't afford to register .94 (.90 doesn't have a
- registration) :-(.
- Take Care, Steve
- Shockwave Software Systems
-
- --- FMail 0.90
- * Origin: The Programmer's Armpit... Home of Monsoon*Qomm! (1:2613/228.2)
- ===========================================================================
- BBS: Canada Remote Systems
- Date: 07-10-93 (11:08) Number: 30157
- From: STEVEN TALLENT Refer#: NONE
- To: NIELS LANGKILDE Recvd: NO
- Subj: RE: SPEAKER(OFF) Conf: (1221) F-PASCAL
- ---------------------------------------------------------------------------
- -=> Quoting Niels Langkilde to Everyone <=-
-
- NL> Is it possible to diable/enable the speaker output (alternatvly
- NL> redirect it) ?? If so, please help !
-
- The only thing that can be done is disabling the speaker many times
- a second to do it. Here's some code that disables it 18 times a second,
- but notably does NOT work with programs that shut down interrupts
- during playback.
-
- {$M 1024,0,0}
- {$N-,S-,G+} { Use g- for 8088 systems, g+ for V20 and above }
- PROGRAM NoSpeak;
- USES Dos;
- VAR OLDINT1C : Procedure;
-
- PROCEDURE ShutOff; INTERRUPT;
- BEGIN
- Port [97] := Port[97] and 253; {Turn off speaker}
- OldInt1C;
- end;
-
- BEGIN
- GetIntVec($1C, @OldInt1C);
- SetIntVec($1C, @ShutOff);
- Keep(0);
- end.
-
- Note this is a TSR, and I can't guarantee that it'll work right on
- anyone's computer.
-
- ___ Blue Wave/QWK v2.12
- --- Renegade v06-25 Beta
- * Origin: Pink's Place (409)883-8344 735-3712 (1:3811/210)